package com.du.limiting.sentinel.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 
 * 
 * @author dujunguang
 * @email dujunguang@gome.com.cn
 * @date 2022-02-23 17:17:17
 */
@Data
@TableName("param_flow_rule")
public class ParamFlowRuleEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	/**
	 * 
	 */
	@TableId
	private Long id;
	/**
	 * 资源名，必填
	 */
	private String resource;
	/**
	 * 限流阈值，必填
	 */
	private Integer count;
	/**
	 * 限流模式 默认QPS 模式-1
	 */
	private Integer grade;
	/**
	 * 统计窗口时间长度（单位为秒）默认-1s
	 */
	private Integer durationinSec;
	/**
	 * 流控效果（支持快速失败和匀速排队模式）默认0-快速失败
	 */
	private Integer controlBehavior;
	/**
	 * 最大排队等待时长（仅在匀速排队模式生效）单位ms
	 */
	private Integer maxQueueingTimeMs;
	/**
	 * 热点参数的索引，必填，对应 SphU.entry(xxx, args) 中的参数索引位置
	 */
	private Integer paramIdx;
	/**
	 * 是否是集群参数流控规则
	 */
	private Integer clusterMode;
	/**
	 * 创建时间
	 */
	private Date createTime;
	/**
	 * 更新时间
	 */
	private Date updateTime;
	/**
	 * 删除标识 0-未删 1-已删
	 */
	private Integer deleted;

}
